Information retrieval and question answering systems search on annotations as a way to incorporate metadata, entity information, or additional knowledge into searches to improve information recall and answering precision. Software developers may link annotations to documents using a variety of approaches, such as storing the annotations as metadata, storing the annotations in separate structured resources, or inserting the annotations into the document via tags.
Software developers may also add term location information to annotations that indicate locations of the annotations' corresponding terms (e.g., words) in a document or original text stream. For example, if a first sentence in a document is “Barack Obama is the president of the United States,” an annotation of “PERSON” may be linked to the term(s) Barack Obama and include term location information of “0,12”, which indicates that the annotation's corresponding term starts at character position 0 and ends at character position 12. As those skilled in the art can appreciate, software developers may use other approaches to note term location information, such as by using a character start location and a span value that identifies the number of characters in a corresponding term.